package com.diaohw.platform.framework.web;

import org.springframework.core.annotation.AliasFor;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 操作日志注解
 *
 * @author 刁海文
 * @Remark 操作日志注解
 * @since 2023/6/11 16:49
 */
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.METHOD, ElementType.TYPE})
public @interface OperatorLog {

    @AliasFor("enable")
    boolean value() default true;

    /**
     * 是否启用操作日志
     */
    @AliasFor("value")
    boolean enable() default true;

    /**
     * 是否记录请求数据
     */
    boolean request() default true;

    /**
     * 是否记录响应数据
     */
    boolean response() default true;

    /**
     * 方法描述
     */
    String describe() default "";
}
